/**
	* The weapon's current angle in clockwise radians; used by certain weapon
	* types with angular movement. 0 = right, PI/2 = down, etc. Note: if you
	* want Link's shield to interact with the weapon correctly, you must set
	* its Dir to a direction that approximates this angle.
	*/
	int Angle;

	/**
	* Specifies whether a weapon has angular movement.
	*/
	bool Angular;
	
	/**
	* Whether and how the weapon's tiles should be flipped.
	* 0: No flip
	* 1: Horizontal flip
	* 2: Vertical flip
	* 3: Both (180 degree rotation)
	*/
	int Flip;

	/**
	* Whether to extend the sprite of the weapon.
	*/
	int Extend;

	/**
	* The number of tile columns composing the sprite.
	* Writing to this is ignored unless Extend is set to values >=3.
	*/
	int TileWidth;

	/**
	* The number of tile rows composing the sprite.
	* Writing to this is ignored unless Extend is set to values >=3.
	*/
	int TileHeight;

	/**
	* The width of the sprite's hitbox, or collision rectangle.
	*/
	int HitWidth;

	/**
	* The height of the sprite's hitbox, or collision rectangle.
	*/
	int HitHeight;

	/**
	* The Z-axis height of the sprite's hitbox, or collision rectangle.
	* The greater it is, the higher Link must jump or fly over the sprite
	* to avoid taking damage.
	*/
	int HitZHeight;

	/**
	* The X offset of the sprite's hitbox, or collision rectangle.
	* Setting it to positive or negative values will move the sprite's
	* hitbox left or right.
	*/
	int HitXOffset;

	/**
	* The Y offset of the sprite's hitbox, or collision rectangle.
	* Setting it to positive or negative values will move the sprite's
	* hitbox up or down.
	*/
	int HitYOffset;

	/**
	* The X offset of the sprite.
	* Setting it to positive or negative values will move the sprite's
	* tiles left or right relative to its position.
	*/
	int DrawXOffset;

	/**
	* The Y offset of the sprite.
	* Setting it to positive or negative values will move the sprite's
	* tiles up or down relative to its position.
	*/
	int DrawYOffset;

	/**
	* The Z offset of the sprite.
	*/
	int DrawZOffset;